// 统一管理项目接口的模块
// 引入二次封装的axios(带有请求、响应的拦截器)
import requests from './ajax'
import mockRequests from './mockAjax'

// 三级联动接口
// api/product/getBaseCategoryList get 无参数
// 对外暴露一个函数，只要外部调用这个函数，就想服务器发起ajax请求，获取三级菜单数据。当前这个函数只需要返回服务器结果即可
export const reqCategoryList = ()=> requests({url:'/product/getBaseCategoryList',method:'get'});
// 切记：当前函数执行需要把服务器返回结果返回

// 获取banner(Home首页轮播图接口)
export const reqGetBannerList = ()=> mockRequests.get('/banner')
// 获取floor(Home首页家用电器接口)
export const reqFloorList = ()=> mockRequests.get('/floor')

// 获取Search(Search搜索模块接口) 地址：/api/list，请求方式：post
// 当前该接口（获取搜索模块的数据），给服务器传递一个默认参数至少是一个空对象
export const reqGetSearchInfo = (params)=> requests({url:"/list",method:"post",data:params}) 

// 获取Detail(产品详情信息的接口) 地址：/api/item/{ skuId } 请求方式：get
export const reqGoodsInfo = (skuId)=> requests({url:`/item/${skuId}`,method:"get"}) 

// 将产品添加到购物车中(获取更新某一个产品的个数)  地址：/api/cart/addToCart/{ skuId }/{ skuNum } 请求方式post
export const reqAddOrUpdateShopCart = (skuId,skuNum) => requests({url:`/cart/addToCart/${skuId}/${skuNum}`,method:"post"})

// 获取购物车列表数据接口 地址/api/cart/cartList 请求方式：get
export const reqCartList = () => requests({url:"/cart/cartList",method:"get"})

// 删除购物车产品接口 地址 /api/cart/deleteCart/{skuId} method:delete
export const reqDeleteCartById = (skuId) => requests({url:`/cart/deleteCart/${skuId}`,method:"delete"})

// 修改商品选择状态 地址 /api/cart/checkCart/{skuID}/{isChecked} 请求方式：get
export const reqUpdateCheckedById = (skuId,isChecked) => requests({url:`/cart/checkCart/${skuId}/${isChecked}`,method:"get"})

// 获取验证码 地址 /api/user/passport/sendCode/{phone} 请求方式 get
export const reqGetCode = (phone) => requests({url:`/user/passport/sendCode/${phone}`,method:"get"})

// 注册 地址 /api/user/passport/register   请求方式 post
export const reqUserRegister = (data) => requests({url:"/user/passport/register",data,method:"post"})

// 登录 地址 /api/user/passport/login 请求方式post
export const reqUserLogin = (data) => requests({url:"/user/passport/login",data,method:"post"})

// 获取用户信息【需要带着用户的token向服务器要用户信息】 地址 /api/user/passport/auth/getUserInfo 请求方式 get
export const reqUserInfo = () => requests({url:"/user/passport/auth/getUserInfo",method:"get"})

// 退出登录  地址 /api/user/passport/logout  请求方式 get
export const reqLogout = () => requests({url:"/user/passport/logout",method:"get"})

// 获取用户地址信息 地址 /api/user/userAddress/auth/findUserAddressList  请求方式 get
export const reqAddressInfo = () => requests({url:"/user/userAddress/auth/findUserAddressList",method:"get"}) 

// 获取订单交易页信息 地址/api/order/auth/trade 请求方式 get
export const reqOrderInfo = () => requests({url:"/order/auth/trade",method:"get"})

// 提交订单接口 地址 /api/order/auth/submitOrder?tradeNo={tradeNo}  请求方式 post
export const reqSubmitOrder = (tradeNo,data) => requests({url:`/order/auth/submitOrder?tradeNo=${tradeNo}`,data,method:"post"})

// 获取订单支付信息 地址 /api/payment/weixin/createNative/{orderId}  请求方式 get
export const reqPayInfo  = (orderId) => requests({url:`payment/weixin/createNative/${orderId}`,method:"get"})

// 获取支付订单状态 地址 /api/payment/weixin/queryPayStatus/{orderId}  请求方式 get
export const reqPayStatus = (orderId) => requests({url:`/payment/weixin/queryPayStatus/${orderId}`,method:"get"})

// 获取我的订单 地址 /api/order/auth/{page}/{limit}  请求方式 get
export const reqMyOrderList = (page,limit) => requests({url:`/order/auth/${page}/${limit}`,method:"get"})